home *** CD-ROM | disk | FTP | other *** search
/ PC PowerPlay 58 / pcpp58a.iso / extras / quake 3 source / Q3A_ToolSource.exe / Main / SELECT.H < prev    next >
Encoding:
Text File  |  2001-01-02  |  2.0 KB  |  64 lines

  1.  
  2. typedef enum
  3. {
  4.     sel_brush,
  5.     // sel_sticky_brush,
  6.     // sel_face,
  7.     sel_vertex,
  8.     sel_edge,
  9.   sel_singlevertex,
  10.   sel_curvepoint,
  11.   sel_area
  12. } select_t;
  13.  
  14. typedef struct
  15. {
  16.     brush_t        *brush;
  17.     face_t        *face;
  18.     float        dist;
  19.     qboolean    selected;
  20. } trace_t;
  21.  
  22.  
  23. #define    SF_SELECTED_ONLY     0x01
  24. #define    SF_ENTITIES_FIRST     0x02
  25. #define    SF_SINGLEFACE           0x04
  26. #define SF_IGNORECURVES    0x08
  27. #define SF_IGNOREGROUPS    0x10
  28. #define SF_CYCLE           0x20
  29. #define SF_CYCLEKEEP       0x40
  30.  
  31.  
  32. trace_t Test_Ray (vec3_t origin, vec3_t dir, int flags);
  33.  
  34. void Select_GetBounds (vec3_t mins, vec3_t maxs);
  35. void Select_Brush (brush_t *b, bool bComplete = true, bool bStatus = true);
  36. void Select_Ray (vec3_t origin, vec3_t dir, int flags);
  37. void Select_Delete (void);
  38. void Select_Deselect (bool bDeselectFaces = true);
  39. void Select_Invert(void);
  40. void Select_Clone (void);
  41. void Select_Move (vec3_t delta, bool bSnap = true);
  42. void WINAPI Select_SetTexture (texdef_t *texdef, brushprimit_texdef_t *brushprimit_texdef, bool bFitScale = false, void* pPlugTexdef = NULL);
  43. void Select_FlipAxis (int axis);
  44. void Select_RotateAxis (int axis, float deg, bool bPaint = true, bool bMouse = false);
  45. void Select_CompleteTall (void);
  46. void Select_PartialTall (void);
  47. void Select_Touching (void);
  48. void Select_Inside (void);
  49. void Select_MakeStructural (void);
  50. void Select_MakeDetail (void);
  51. void Select_AllOfType();
  52. void Select_Reselect();
  53. void Select_FitTexture(int nHeight = 1, int nWidth = 1);
  54.  
  55. // absolute texture coordinates
  56. // TTimo NOTE: this is stuff for old brushes format and rotation texture lock .. sort of in-between with bush primitives
  57. void ComputeAbsolute(face_t* f, vec3_t& p1, vec3_t& p2, vec3_t& p3);
  58. void AbsoluteToLocal(plane_t normal2, face_t* f, vec3_t& p1, vec3_t& p2, vec3_t& p3);
  59. void Select_Hide();
  60. void Select_ShowAllHidden();
  61. // add selected brushes to a group, update the tree
  62. void Select_AddToGroup(const char *pName);
  63. void Select_Name(const char *pName);
  64.